package org.dromara.admin.domain.bo;

import org.dromara.admin.domain.AccountBook;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.math.BigDecimal;

/**
 * 账本业务对象 hr_account_book
 *
 * @author Lion Li
 * @date 2025-09-23
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = AccountBook.class, reverseConvertGenerate = false)
public class AccountBookBo extends BaseEntity {

    /**
     * 账本ID
     */
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 类型:RENT_INCOME-租金收入，WITHDRAWAL-提现
     */
    private String type;

    /**
     * 金额
     */
    private BigDecimal amount;

    /**
     * 实际到账金额
     */
    private BigDecimal actualAmount;

    /**
     * 操作后余额
     */
    private BigDecimal balance;

    /**
     * 第三方表ID
     */
    private Long relatedId;

    /**
     * 第三方表名称
     */
    private String relatedTable;

    /**
     * 状态：PENDING(待审核), APPROVED(通过), REJECTED(拒绝)
     */
    private String status;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 资方名称
     */
    private String capitalUserName;

    /**
     * 真实姓名
     */
    private String realName;

    /**
     * 手机号码
     */
    private String phonenumber;
}
